#define _CRT_SECURE_NO_WARNINGS 1

#include"list.h"
struct AA
{
	int _a;
	int _b;
	AA(int a = 0, int b = 0)
		:_a(a)
		, _b(b)
	{}
};

struct BB
{
	BB(AA* x = nullptr)
		: _bb(x)
	{}

	AA* _bb;
	int _c = 0;
	void operator++()
	{
		_c++;
	}
	void operator++(int)
	{
		_c++;
	}
};
ostream& operator<<(ostream& out, const BB b)
{
	out << b._c;
	return out;
}
//void test1()
//{
//	AA a;
//	AA b;
//
//	AA* _this = &a;
//	const BB bb(&a);
//	bb._bb = &b;
//	bb._bb->_a = 0;
//	BB b;
//	b++;
//	cout << b._c << endl;
//	++b;
//	cout << b._c << endl;
//}

int main()
{
	//test1();
	A::list_test6();
	return 0;
}